test.xlsxというファイルの3枚のシートに下記内容のデータが保存されているとする.
Rのバージョン(64bit or 32bit)に対応したJAVAをダウンロードしてインストール. ここでは64bit版のRの場合を想定する.
java8 からWindows x64(64bit版)のJAVAであるjdk-8-windows-x64.exe
をダウンロードしてインストールする. 続いて、Rでxlsxパッケージの読み込み.
library(xlsx)
read.xlsx()
関数でエクセルのxlsxファイルをRで読み込むことができる. 基本はread.xlsx("[ファイル名]",sheetIndex=[シート番号])
でxlsxファイルの名前とシート番号を指定する.
read.xlsx("test.xlsx",sheetIndex=1)
## X Y
## 1 1 1
## 2 2 4
## 3 3 9
sheetIndex
でシート番号を指定する代わりに、sheetName
でシート名で指定することもできる.
read.xlsx("test.xlsx",sheetName="Sheet1")
## X Y
## 1 1 1
## 2 2 4
## 3 3 9
日本語が変数名にある場合は文字化けする.
read.xlsx("test.xlsx",sheetIndex="H26")
## 蟷?蠎? 莠?蜿.
## 1 2014 10
## 2 2013 5
encoding="UTF=8"
とすれば回避できる.
read.xlsx("test.xlsx",sheetIndex="H26",encoding="UTF-8")
## 年度 人口
## 1 2014 10
## 2 2013 5
1枚のシートの中に複数の表がある場合は、全て読み込まれてしまう.
read.xlsx("test.xlsx",sheetIndex=3)
## X Y Z
## 1 1 1 A
## 2 2 2 B
## 3 Z W <NA>
## 4 1 1 <NA>
## 5 2 2 <NA>
読み込む行の開始と終了をstartRow
とendRow
で指定することで、特定の表のみ読み込むことができる.
read.xlsx("test.xlsx",sheetIndex=3,startRow=1,endRow=3)
## X Y Z
## 1 1 1 A
## 2 2 2 B